Skip to content

Comments

Fix automatic SystemVM template download to S3 secondary storage#12426

Open
Damans227 wants to merge 14 commits intoapache:4.20from
Damans227:fix/9002-s3-systemvm-bootstrap
Open

Fix automatic SystemVM template download to S3 secondary storage#12426
Damans227 wants to merge 14 commits intoapache:4.20from
Damans227:fix/9002-s3-systemvm-bootstrap

Conversation

@Damans227
Copy link
Contributor

@Damans227 Damans227 commented Jan 14, 2026

Description

This PR fixes an issue where the SystemVM template is not automatically downloaded to S3 secondary storage when adding it to a CloudStack zone.

Root Cause:

  • S3 stores use REGION scope but DefaultEndPointSelector only returned LocalHostEndpoint for ZONE scope, so no endpoint was found to download the SystemVM template.

  • Allow Zone scoped S3 Secondary Storage.

Fix:
Allow LocalHostEndpoint to handle SYSTEM template downloads for REGION-scoped stores, plus added null checks for S3 stores without URLs and enabled path-style access for S3-compatible storage.

Fixes: #9002

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)
  • Build/CI
  • Test (unit or integration test code)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Major
  • Minor

Bug Severity

  • BLOCKER
  • Critical
  • Major
  • Minor
  • Trivial

Screenshots (if appropriate):

Broken:

image

Fixed:

Screencast.from.2026-01-14.13-52-40.mp4

How Has This Been Tested?

Test Environment:

  • CloudStack 4.20.3.0
  • KVM hypervisor (Ubuntu 22.04)
  • MinIO S3-compatible storage

Test Steps:

  1. Started with a fresh CloudStack zone with no secondary storage configured
  2. Added NFS staging store (required for S3)
  3. Added S3 image store (MinIO) via UI
  4. Verified SystemVM template automatically downloaded to S3
  5. Verified SSVM booted successfully using the template from S3
  6. Verified Console Proxy VM also booted successfully

@nvazquez
Copy link
Contributor

@blueorangutan package

@blueorangutan
Copy link

@nvazquez a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 16368

@codecov
Copy link

codecov bot commented Jan 15, 2026

Codecov Report

❌ Patch coverage is 5.55556% with 51 lines in your changes missing coverage. Please review.
✅ Project coverage is 16.25%. Comparing base (6a324da) to head (2f62947).
⚠️ Report is 78 commits behind head on 4.20.

Files with missing lines Patch % Lines
...om/cloud/upgrade/SystemVmTemplateRegistration.java 0.00% 15 Missing ⚠️
...he/cloudstack/api/response/ImageStoreResponse.java 0.00% 12 Missing ⚠️
...m/cloud/storage/template/S3TemplateDownloader.java 0.00% 7 Missing ⚠️
...com/cloud/api/query/dao/ImageStoreJoinDaoImpl.java 0.00% 5 Missing ⚠️
...datastore/lifecycle/S3ImageStoreLifeCycleImpl.java 0.00% 4 Missing ⚠️
...tack/storage/endpoint/DefaultEndPointSelector.java 0.00% 3 Missing ⚠️
.../api/command/admin/storage/AddImageStoreS3CMD.java 0.00% 2 Missing ⚠️
...e/datastore/provider/S3ImageStoreProviderImpl.java 0.00% 1 Missing ⚠️
...ain/java/com/cloud/storage/StorageManagerImpl.java 0.00% 1 Missing ⚠️
.../main/java/com/cloud/utils/storage/S3/S3Utils.java 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               4.20   #12426      +/-   ##
============================================
+ Coverage     16.23%   16.25%   +0.01%     
- Complexity    13382    13423      +41     
============================================
  Files          5657     5662       +5     
  Lines        498999   500189    +1190     
  Branches      60566    60734     +168     
============================================
+ Hits          81035    81302     +267     
- Misses       408928   409803     +875     
- Partials       9036     9084      +48     
Flag Coverage Δ
uitests 4.15% <ø> (+0.12%) ⬆️
unittests 17.10% <5.55%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@nvazquez
Copy link
Contributor

@blueorangutan test


client.setEndpoint(clientOptions.getEndPoint());
// Enable path-style access for S3-compatible storage
client.setS3ClientOptions(com.amazonaws.services.s3.S3ClientOptions.builder().setPathStyleAccess(true).build());
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this required?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, when debugging the issue... I noticed that the connection to MinIO failed at the time of template upload, with an error that looked something like:

UnknownHostException: cloudstack-secondary.10.0.34.157 i.e. the SDK was trying to connect to the http://cloudstack-secondary.10.0.34.157:9000/... which is the virtual-hosted style (refer: virtual style vs path style syntax for s3).

Looking at other S3-compatible plugins in CloudStack, I found that both CephObjectStoreDriverImpl and CloudianHyperStoreUtil use enablePathStyleAccess() to get path-style URLs http://10.0.34.157:9000/cloudstack-secondary/... i.e.

     AmazonS3 client = AmazonS3ClientBuilder.standard()
                .enablePathStyleAccess()
                .withCredentials(new AWSStaticCredentialsProvider(new BasicAWSCredentials(accessKey, secretKey)))
                .withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration(url, "auto"))
                .build();

Applying the same fix here worked. The AWS SDK documentation confirms that path-style access must be explicitly enabled for S3-compatible stores.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes an issue where SystemVM templates fail to automatically download to S3 secondary storage when adding it to a CloudStack zone. The root cause was that S3 stores use REGION scope, but the endpoint selector only returned LocalHostEndpoint for ZONE-scoped stores with null scope IDs.

Changes:

  • Modified endpoint selection logic to support REGION-scoped stores for SYSTEM template downloads
  • Added null safety checks for data stores without URLs (e.g., S3 object stores)
  • Enabled path-style access for S3-compatible storage systems like MinIO

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
engine/storage/src/main/java/org/apache/cloudstack/storage/endpoint/DefaultEndPointSelector.java Extended condition to allow LocalHostEndpoint for REGION-scoped stores with SYSTEM templates
services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java Added null checks to skip data stores without URLs when building secondary storage addresses
services/secondary-storage/controller/src/test/java/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImplTest.java Added comprehensive test coverage for null handling in data store processing
utils/src/main/java/com/cloud/utils/storage/S3/S3Utils.java Enabled path-style access for S3-compatible storage systems

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +117 to +118
// Enable path-style access for S3-compatible storage
client.setS3ClientOptions(com.amazonaws.services.s3.S3ClientOptions.builder().setPathStyleAccess(true).build());
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Path-style access is being enabled unconditionally for all S3 endpoints, including AWS S3 which deprecated path-style access in favor of virtual-hosted-style. This could cause compatibility issues with AWS S3. Consider making path-style access configurable through ClientOptions, or only enabling it when a custom endpoint is detected (non-AWS S3).

Copilot uses AI. Check for mistakes.
Copy link
Contributor Author

@Damans227 Damans227 Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, path-style access code is already inside the if (StringUtils.isNotBlank(clientOptions.getEndPoint())) block - which means path-style access is only enabled when a custom endpoint is specified. The code is already doing what Copilot is asking for.

Comment on lines +403 to +405
if (tmplInfo.getTemplateType() == TemplateType.SYSTEM &&
(store.getScope().getScopeType() == ScopeType.REGION ||
(store.getScope().getScopeType() == ScopeType.ZONE && store.getScope().getScopeId() == null))) {
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The modified endpoint selection logic for REGION-scoped SYSTEM templates lacks test coverage. Consider adding unit tests in the engine/storage module to verify that LocalHostEndpoint is correctly returned for REGION-scoped stores with SYSTEM templates, similar to the existing test coverage in SecondaryStorageManagerImplTest.

Copilot uses AI. Check for mistakes.
@Damans227 Damans227 requested a review from vishesh92 January 16, 2026 17:13
@kiranchavala
Copy link
Member

@blueorangutan package

@kiranchavala kiranchavala self-assigned this Jan 30, 2026
Copy link
Member

@kiranchavala kiranchavala left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Damans227

Please find the issues that i observed

Tested with the pr packages and on oracle linux 8.6

  1. Unable to use ceph s3 storage , got the following exception is logs
2026-01-30 07:52:30,770 DEBUG [o.a.c.s.r.NfsSecondaryStorageResource] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) Executing command "DownloadCommand" [{"hvm":false,"description":"SystemVM Template (KVM)","checksum":"c059b0d051e0cd6fbe9d5d4fc40c7e5d","maxDownloadSizeInBytes":53687091200,"id":3,"resourceType":"TEMPLATE","installPath":"template/tmpl/1/3/routing-3","_store":{"id":1,"uuid":"fdb66906-6b57-4e32-a7df-cbb93a917fce","accessKey":"AFYT2BKNI1U8T6DY6435","secretKey":"kia5kyDAZuP7QjwxNmhVAEE5l5dzsSJWbxtSXCIA","endPoint":"https://10.0.33.100","bucketName":"testbucket","httpsFlag":true,"created":"Jan 30, 2026, 7:52:20 AM","enableRRS":false,"maxSingleUploadSizeInBytes":5368709120},"followRedirects":false,"url":"http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-kvm.qcow2.bz2","format":"QCOW2","accountId":1,"name":"routing-3","contextMap":{},"wait":0,"bypassHostMaintenance":false}].
2026-01-30 07:52:30,798 DEBUG [c.c.u.n.HTTPUtils] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) Initializing new HttpMethodRetryHandler with retry count 5
2026-01-30 07:52:30,892 INFO  [c.c.s.t.S3TemplateDownloader] (pool-10-thread-1:[ctx-2cad9dd2]) (logid:1b4a38df) Starting download from http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-kvm.qcow2.bz2 to S3 bucket testbucket and size (304.60 MB) 319401369 bytes
2026-01-30 07:52:30,897 DEBUG [c.c.u.s.S.S3Utils] (pool-10-thread-1:[ctx-2cad9dd2]) (logid:1b4a38df) Sending stream as S3 object template/tmpl/1/3/routing-3/systemvm64template-4.6.0-kvm.qcow2.bz2 in bucket testbucket using PutObjectRequest
2026-01-30 07:52:31,217 DEBUG [c.c.u.s.S.S3Utils] (pool-10-thread-1:[ctx-2cad9dd2]) (logid:1b4a38df) Creating S3 client with configuration: [protocol: https, signer: null, connectionTimeOut: 10000, maxErrorRetry: -1, socketTimeout: 50000, useTCPKeepAlive: null, connectionTtl: null]
2026-01-30 07:52:31,468 DEBUG [c.c.u.s.S.S3Utils] (pool-10-thread-1:[ctx-2cad9dd2]) (logid:1b4a38df) Setting the end point for S3 client with access key AFYT2BKNI1U8T6DY6435 to https://10.0.33.100.



2026-01-30 07:52:33,803 INFO  [o.a.c.s.i.BaseImageStoreDriverImpl] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) Updating store ref entry for template Template {"format":"QCOW2","id":3,"name":"SystemVM Template (KVM)","uniqueName":"routing-3","uuid":"56911227-fd0c-11f0-9d05-1e00e00002fb"}
2026-01-30 07:52:33,817 WARN  [c.c.a.AlertManagerImpl] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) alertType=[28] dataCenterId=[1] podId=[null] clusterId=[null] message=[Failed to register template: 56911227-fd0c-11f0-9d05-1e00e00002fb with error: ].
2026-01-30 07:52:33,825 WARN  [c.c.a.AlertManagerImpl] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) No recipients set in global setting 'alert.email.addresses', skipping sending alert with subject [Failed to register template: 56911227-fd0c-11f0-9d05-1e00e00002fb with error: ] and content [Failed to register template: 56911227-fd0c-11f0-9d05-1e00e00002fb with error: ].
2026-01-30 07:52:33,825 ERROR [o.a.c.s.i.BaseImageStoreDriverImpl] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) Failed to register template: 56911227-fd0c-11f0-9d05-1e00e00002fb 
with error:

  1. Used Minio s3 storage, the systemvm template got registered successfully

But it was of "systemvm64template-4.6.0-kvm.qcow2.bz2" and the systemvm were struck in starting state

Image
  1. When the primary storage is of zone scope,

logs

2026-01-30 09:32:23,838 DEBUG [o.a.c.s.v.VolumeServiceImpl] (Work-Job-Executor-7:[ctx-45ba2dab, job-40/job-47, ctx-3f578420]) (logid:17e47580) Found template Template {"format":"QCOW2","id":3,"name":"SystemVM Template (KVM)","uniqueName":"routing-3","uuid":"56911227-fd0c-11f0-9d05-1e00e00002fb"} in storage pool StoragePool {"id":1,"name":"pri","poolType":"NetworkFilesystem","uuid":"cfc7f591-fc1e-36dd-b2c5-dc6712acf57e"} with VMTemplateStoragePool: TmplPool[3-3-1-null]
2026-01-30 09:32:23,839 DEBUG [o.a.c.s.v.VolumeServiceImpl] (Work-Job-Executor-7:[ctx-45ba2dab, job-40/job-47, ctx-3f578420]) (logid:17e47580) Acquire lock on VMTemplateStoragePool 3 with timeout 3600 seconds


  1. When the primary storage is of cluster scope,

logs


2026-01-30 09:47:14,659 DEBUG [o.a.c.s.c.m.StorageCacheManagerImpl] (Work-Job-Executor-6:[ctx-fdef51b0, job-62/job-64, ctx-9c2c6347]) (logid:11a5fb7e) waiting cache copy completion type: template, id: 3, lock: 638897157
2026-01-30 09:47:24,659 DEBUG [o.a.c.s.c.m.StorageCacheManagerImpl] (Work-Job-Executor-6:[ctx-fdef51b0, job-62/job-64, ctx-9c2c6347]) (logid:11a5fb7e) waken up
2026-01-30 09:47:24,661 DEBUG [o.a.c.s.c.m.StorageCacheManagerImpl] (Work-Job-Executor-6:[ctx-fdef51b0, job-62/job-64, ctx-9c2c6347]) (logid:11a5fb7e) waiting cache copy completion type: template, id: 3, lock: 638897157

@abh1sar abh1sar added this to the 4.20.3 milestone Feb 1, 2026
@Damans227
Copy link
Contributor Author

Tested with the pr packages and on oracle linux 8.6

Reproduced this issue around Ceph S3 being used as secondary storage. I too get the empty error - logs show downloadStatus: DOWNLOAD_ERROR but errorString is blank. Looking into it now.

logs:

2026-02-02 18:53:10,866 DEBUG [c.c.a.t.Request] Seq 3-6421288643700195481: Sending  { Cmd , DownloadCommand ... "_store":{"com.cloud.agent.api.to.S3TO":{"endPoint":"http://10.0.33.100","bucketName":"cloudstack-secondary"}} ... }
2026-02-02 18:53:13,956 DEBUG [c.c.a.t.Request] Seq 3-6421288643700195481: Processing:  { Ans: , DownloadAnswer {"errorString":"","downloadStatus":"DOWNLOAD_ERROR","templateSize":"(0 bytes) 0"} }
2026-02-02 18:53:13,978 ERROR [o.a.c.s.i.BaseImageStoreDriverImpl] Failed to register template: 36d0a884-0055-11f1-bd19-1e004d0003d0 with error: 

@Damans227
Copy link
Contributor Author

Damans227 commented Feb 2, 2026

@kiranchavala Regarding the Ceph issue, your logs show HTTPS endpoint (https://10.0.33.100) but port 443 isn't responding when I curl on that host:

darora@dell16plus:~$ curl -k https://10.0.33.100/testbucket
curl: (7) Failed to connect to 10.0.33.100 port 443 after 193 ms: Couldn't connect to server

However, testing with with HTTP (http://10.0.33.100) curl works fine, and the template downloads successfully:

The testbucket in screenshot below is where SystemVM template was downloaded.

image image

Could you try with HTTP instead? Is there a reason HTTPS was configured?

@kiranchavala
Copy link
Member

kiranchavala commented Feb 3, 2026

Thanks @Damans227

The issue is solved when I point it to a HTTP s3 link

Create a zone from scratch , in the zone creation wizard add s3 as the secondary storage

  1. Te system template that is getting download is a old one

  2. The db also points to a older record

mysql> select name,url,hypervisor_type from vm_template where type="SYSTEM";
+-------------------------------+-------------------------------------------------------------------------------------------+-----------------+
| name                          | url                                                                                       | hypervisor_type |
+-------------------------------+-------------------------------------------------------------------------------------------+-----------------+
| SystemVM Template (XenServer) | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-xen.vhd.bz2          | XenServer       |
| SystemVM Template (KVM)       | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-kvm.qcow2.bz2        | KVM             |
| SystemVM Template (vSphere)   | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-vmware.ova           | VMware          |
| SystemVM Template (HyperV)    | http://download.cloudstack.org/templates/4.3/systemvm64template-2013-12-23-hyperv.vhd.bz2 | Hyperv          |
| SystemVM Template (LXC)       | http://download.cloudstack.org/templates/acton/acton-systemvm-02062012.qcow2.bz2          | LXC             |
| SystemVM Template (Ovm3)      | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-ovm.raw.bz2          | Ovm3            |
+-------------------------------+-------------------------------------------------------------------------------------------+-----------------+
aws --profile kirans3     --endpoint-url http://10.0.33.100     s3 ls s3://testcskiran --recursive
2026-02-03 15:16:34  319401369 template/tmpl/1/3/routing-3/systemvm64template-4.6.0-kvm.qcow2.bz2

aws --profile daman --endpoint-url http://10.0.33.100     s3 ls s3://testbucket --recursive
2026-02-03 00:36:02          5 template/test-upload.txt
2026-02-03 00:47:34  319401369 template/tmpl/1/3/routing-3/systemvm64template-4.6.0-kvm.qcow2.bz2
2026-01-09 11:21:48         14 test.txt

Will check again with a fresh deployment

@Damans227
Copy link
Contributor Author

Thanks @Damans227

The issue is solved when I point it to a HTTP s3 link

Create a zone from scratch , in the zone creation wizard add s3 as the secondary storage

  1. Te system template that is getting download is a old one

  2. The db also points to a older record

mysql> select name,url,hypervisor_type from vm_template where type="SYSTEM";
+-------------------------------+-------------------------------------------------------------------------------------------+-----------------+
| name                          | url                                                                                       | hypervisor_type |
+-------------------------------+-------------------------------------------------------------------------------------------+-----------------+
| SystemVM Template (XenServer) | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-xen.vhd.bz2          | XenServer       |
| SystemVM Template (KVM)       | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-kvm.qcow2.bz2        | KVM             |
| SystemVM Template (vSphere)   | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-vmware.ova           | VMware          |
| SystemVM Template (HyperV)    | http://download.cloudstack.org/templates/4.3/systemvm64template-2013-12-23-hyperv.vhd.bz2 | Hyperv          |
| SystemVM Template (LXC)       | http://download.cloudstack.org/templates/acton/acton-systemvm-02062012.qcow2.bz2          | LXC             |
| SystemVM Template (Ovm3)      | http://download.cloudstack.org/systemvm/4.6/systemvm64template-4.6.0-ovm.raw.bz2          | Ovm3            |
+-------------------------------+-------------------------------------------------------------------------------------------+-----------------+
aws --profile kirans3     --endpoint-url http://10.0.33.100     s3 ls s3://testcskiran --recursive
2026-02-03 15:16:34  319401369 template/tmpl/1/3/routing-3/systemvm64template-4.6.0-kvm.qcow2.bz2

aws --profile daman --endpoint-url http://10.0.33.100     s3 ls s3://testbucket --recursive
2026-02-03 00:36:02          5 template/test-upload.txt
2026-02-03 00:47:34  319401369 template/tmpl/1/3/routing-3/systemvm64template-4.6.0-kvm.qcow2.bz2
2026-01-09 11:21:48         14 test.txt

Will check again with a fresh deployment

Got it. Thanks for checking.

@kiranchavala
Copy link
Member

Also @Damans227 If possible can you try to improve the cloudstack UI so that bucket details are show in the secondary storage details

Currently there is no way to identify the bucket and s3 URL

@Damans227
Copy link
Contributor Author

2026-01-30 07:52:33,825 ERROR [o.a.c.s.i.BaseImageStoreDriverImpl] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) Failed to register template: 56911227-fd0c-11f0-9d05-1e00e00002fb
with error:

Yea, I’ll look into it.

Also noticed that when an exception happens during template registration, the error string is coming through empty. I’ll try to fix that as well.

2026-01-30 07:52:33,825 ERROR [o.a.c.s.i.BaseImageStoreDriverImpl] (pool-11-thread-1:[ctx-a125d9e1]) (logid:7259f280) Failed to register template: 56911227-fd0c-11f0-9d05-1e00e00002fb 
with error:

@Damans227
Copy link
Contributor Author

@blueorangutan package

@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@apache apache deleted a comment from blueorangutan Feb 16, 2026
@blueorangutan
Copy link

[SF] Trillian Build Failed (tid-15479)

@abh1sar abh1sar modified the milestones: 4.20.3, 4.20.4 Feb 16, 2026
@Damans227
Copy link
Contributor Author

@blueorangutan package

@blueorangutan
Copy link

@Damans227 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 16855

@sureshanaparti
Copy link
Contributor

@blueorangutan package

@blueorangutan
Copy link

@sureshanaparti a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 16858

@blueorangutan
Copy link

[SF] Trillian test result (tid-15493)
Environment: kvm-ol8 (x1), zone: Advanced Networking with Mgmt server ol8
Total time taken: 103473 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr12426-t15493-kvm-ol8.zip
Smoke tests completed. 99 look OK, 29 have errors, 13 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File
test_DeployVmAntiAffinityGroup_in_project Error 97.19 test_affinity_groups_projects.py
test_DeployVmAntiAffinityGroup Error 43.91 test_affinity_groups.py
ContextSuite context=TestInternalLb>:setup Error 0.00 test_internal_lb.py
ContextSuite context=TestIpv4Routing>:setup Error 0.00 test_ipv4_routing.py
ContextSuite context=TestCreateIpv6NetworkVpcOffering>:setup Error 0.00 test_ipv6_infra.py
ContextSuite context=TestIpv6GuestPrefix>:setup Error 0.00 test_ipv6_infra.py
ContextSuite context=TestIpv6PublicIpRange>:setup Error 0.00 test_ipv6_infra.py
test_01_1_create_iso_with_checksum_sha1_negative Error 0.01 test_iso.py
test_01_create_iso_with_checksum_sha1 Error 0.00 test_iso.py
test_02_1_create_iso_with_checksum_sha256_negative Error 0.00 test_iso.py
test_02_create_iso_with_checksum_sha256 Error 0.00 test_iso.py
test_03_1_create_iso_with_checksum_md5_negative Error 0.01 test_iso.py
test_03_create_iso_with_checksum_md5 Error 0.00 test_iso.py
test_04_create_iso_with_no_checksum Error 0.00 test_iso.py
test_01_create_iso Error 0.01 test_iso.py
ContextSuite context=TestISO>:setup Error 0.01 test_iso.py
ContextSuite context=TestListIdsParams>:setup Error 0.00 test_list_ids_parameter.py
ContextSuite context=TestListServiceOfferings>:setup Error 0.00 test_list_service_offerings.py
ContextSuite context=TestListStoragePools>:setup Error 0.00 test_list_storage_pools.py
ContextSuite context=TestListVolumes>:setup Error 0.00 test_list_volumes.py
ContextSuite context=TestProjectSuspendActivate>:setup Error 1525.89 test_projects.py
ContextSuite context=TestLoadBalance>:setup Error 0.00 test_loadbalance.py
test_01_deployVMInSharedNetwork Failure 5.43 test_network.py
ContextSuite context=TestSharedNetworkWithConfigDrive>:teardown Error 6.53 test_network.py
ContextSuite context=TestAdapterTypeForNic>:setup Error 0.00 test_nic_adapter_type.py
test_01_non_strict_host_anti_affinity Failure 133.52 test_nonstrict_affinity_group.py
test_02_non_strict_host_affinity Error 87.44 test_nonstrict_affinity_group.py
test_CRUD_operations_userdata Error 1519.90 test_register_userdata.py
test_deploy_vm_with_registered_userdata Error 6.40 test_register_userdata.py
test_deploy_vm_with_registered_userdata_with_override_policy_allow Error 6.29 test_register_userdata.py
test_deploy_vm_with_registered_userdata_with_override_policy_append Error 6.64 test_register_userdata.py
test_deploy_vm_with_registered_userdata_with_override_policy_deny Error 6.30 test_register_userdata.py
test_deploy_vm_with_registered_userdata_with_params Error 6.22 test_register_userdata.py
test_link_and_unlink_userdata_to_template Error 6.27 test_register_userdata.py
test_user_userdata_crud Error 6.39 test_register_userdata.py
ContextSuite context=TestResetVmOnReboot>:setup Error 0.00 test_reset_vm_on_reboot.py
test_03_register_template Error 633.50 test_resource_names.py
test_04_migrate_to_read_only_storage Failure 1.27 test_secondary_storage.py
test_05_migrate_to_less_free_space Error 1.22 test_secondary_storage.py
ContextSuite context=TestVPCNics>:setup Error 0.00 test_vpc_router_nics.py
test_01_snapshot_root_disk Error 1.15 test_snapshots.py
test_02_list_snapshots_with_removed_data_store Error 44.16 test_snapshots.py
ContextSuite context=TestSnapshotStandaloneBackup>:setup Error 1579.17 test_snapshots.py
ContextSuite context=TestVMWareStoragePolicies>:setup Error 0.00 test_storage_policy.py
test_01_create_template Error 1.12 test_templates.py
test_CreateTemplateWithDuplicateName Error 1.11 test_templates.py
test_02_create_template_with_checksum_sha1 Error 65.58 test_templates.py
test_03_create_template_with_checksum_sha256 Error 65.54 test_templates.py
ContextSuite context=TestTemplates>:setup Error 254.82 test_templates.py
test_01_ISO_usage Failure 1.11 test_usage.py
test_01_snapshot_usage Error 35.87 test_usage.py
test_01_template_usage Error 1.16 test_usage.py
test_01_volume_usage Failure 787.73 test_usage.py
test_10_attachAndDetach_iso Failure 1514.89 test_vm_life_cycle.py
ContextSuite context=TestMigrateVMStrictTags>:setup Error 0.00 test_vm_strict_host_tags.py
ContextSuite context=TestRestoreVMStrictTags>:setup Error 0.00 test_vm_strict_host_tags.py
ContextSuite context=TestScaleVMStrictTags>:setup Error 0.00 test_vm_strict_host_tags.py
ContextSuite context=TestVMDeploymentPlannerStrictTags>:setup Error 0.00 test_vm_strict_host_tags.py
test_06_download_detached_volume Error 299.78 test_volumes.py
test_13_migrate_volume_and_change_offering Error 124.03 test_volumes.py
ContextSuite context=TestIpv6Vpc>:setup Error 0.00 test_vpc_ipv6.py
test_disable_oobm_ha_state_ineligible Error 1515.19 test_hostha_kvm.py
test_hostha_enable_ha_when_host_in_maintenance Error 305.90 test_hostha_kvm.py
all_test_kubernetes_clusters Skipped --- test_kubernetes_clusters.py
all_test_kubernetes_supported_versions Skipped --- test_kubernetes_supported_versions.py
all_test_list_accounts Skipped --- test_list_accounts.py
all_test_list_disk_offerings Skipped --- test_list_disk_offerings.py
all_test_list_domains Skipped --- test_list_domains.py
all_test_list_hosts Skipped --- test_list_hosts.py
all_test_login Skipped --- test_login.py
all_test_metrics_api Skipped --- test_metrics_api.py
all_test_migration Skipped --- test_migration.py
all_test_multipleips_per_nic Skipped --- test_multipleips_per_nic.py
all_test_nested_virtualization Skipped --- test_nested_virtualization.py
all_test_network_acl Skipped --- test_network_acl.py
all_test_network_ipv6 Skipped --- test_network_ipv6.py

@kiranchavala
Copy link
Member

@Damans227 still hitting the issue with the latest packages

Screenshot 2026-02-19 at 3 51 24 PM
2026-02-19 10:16:54,498 DEBUG [c.c.a.ApiServlet] (qtp1390913202-20:[ctx-a987051b]) (logid:aaab27b7) ===START===  10.0.3.251 -- GET  name=sec&provider=S3&zoneid=5c2ae5a5-23e6-4016-9ded-d0d98197f359&details[2].key=bucket&details[2].value=cloudstack-storage4&details[3].key=usehttps&details[3].value=false&details[4].key=endpoint&details[4].value=http:%2F%2F10.0.33.100&command=addImageStore&response=json&sessionkey=2F2ygFipVavNRBLZozAjuh6kMHk
2026-02-19 10:16:54,498 DEBUG [c.c.a.ApiServlet] (qtp1390913202-20:[ctx-a987051b]) (logid:aaab27b7) Two factor authentication is already verified for the user 2, so skipping
2026-02-19 10:16:54,507 DEBUG [c.c.a.ApiServer] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) CIDRs from which account 'Account [{"accountName":"admin","id":2,"uuid":"c387b0c4-0d6e-11f1-98e4-1e003d000366"}]' is allowed to perform API calls: 0.0.0.0/0,::/0
2026-02-19 10:16:54,509 INFO  [o.a.c.a.DynamicRoleBasedAPIAccessChecker] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) Account for user id c3889ae9-0d6e-11f1-98e4-1e003d000366 is Root Admin or Domain Admin, all APIs are allowed.
2026-02-19 10:16:54,509 DEBUG [o.a.c.a.StaticRoleBasedAPIAccessChecker] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) RoleService is enabled. We will use it instead of StaticRoleBasedAPIAccessChecker.
2026-02-19 10:16:54,509 DEBUG [o.a.c.r.ApiRateLimitServiceImpl] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) API rate limiting is disabled. We will not use ApiRateLimitService.
2026-02-19 10:16:54,513 INFO  [o.a.c.s.d.l.S3ImageStoreLifeCycleImpl] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) Trying to add a S3 store with endpoint: http://10.0.33.100
2026-02-19 10:16:54,579 DEBUG [o.a.c.s.i.TemplateDataFactoryImpl] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) template Template {"format":"QCOW2","id":3,"name":"SystemVM Template (KVM)","uniqueName":"routing-3","uuid":"813c771e-0d6e-11f1-98e4-1e003d000366"} with id 3 is already in store:ImageStore {"id":1,"name":"sec","uuid":"165c480d-1bd1-44bb-93a0-77cc3f4be5a3"}, type: Image
2026-02-19 10:16:54,601 DEBUG [o.a.c.s.i.BaseImageStoreDriverImpl] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) Downloading template to data store ImageStore {"id":1,"name":"sec","uuid":"165c480d-1bd1-44bb-93a0-77cc3f4be5a3"}
2026-02-19 10:16:54,610 WARN  [c.c.s.d.DownloadMonitorImpl] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) There is no secondary storage VM for downloading template to image store sec
2026-02-19 10:16:54,613 DEBUG [o.a.c.s.i.TemplateDataFactoryImpl] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) template Template {"format":"QCOW2","id":3,"name":"SystemVM Template (KVM)","uniqueName":"routing-3","uuid":"813c771e-0d6e-11f1-98e4-1e003d000366"} with id 3 is already in store:ImageStore {"id":1,"name":"sec","uuid":"165c480d-1bd1-44bb-93a0-77cc3f4be5a3"}, type: Image
2026-02-19 10:16:54,678 DEBUG [c.c.a.ApiServlet] (qtp1390913202-20:[ctx-a987051b, ctx-f7ca308e]) (logid:aaab27b7) ===END===  10.0.3.251 -- GET  name=sec&provider=S3&zoneid=5c2ae5a5-23e6-4016-9ded-d0d98197f359&details[2].key=bucket&details[2].value=cloudstack-storage4&details[3].key=usehttps&details[3].value=false&details[4].key=endpoint&details[4].value=http:%2F%2F10.0.33.100&command=addImageStore&response=json&sessionkey=2F2ygFipVavNRBLZozAjuh6kMHk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants